
"""
网站根目录下的robots.txt 是爬虫协议
1. 定义了哪些页面允许爬虫爬取，哪些不允许爬虫爬取
2. 爬虫示例:
User-agent: *
Disallow: /
Allow: /public/

解析:  User-agent 代表爬虫名称，*代表所有爬虫
Disallow /   /则代表不允许抓取所有页面
Allow: /public/  可以抓取 public 目录
3. 百度爬虫协议文件地址 :   https://www.baidu.com/robots.txt


User-agent: Baiduspider
Disallow: /baidu
Disallow: /s?
Disallow: /ulink?
Disallow: /link?
Disallow: /home/news/data/
Disallow: /bh

User-agent: Googlebot
Disallow: /baidu
Disallow: /s?
Disallow: /shifen/
Disallow: /homepage/
Disallow: /cpro
Disallow: /ulink?
Disallow: /link?
Disallow: /home/news/data/
Disallow: /bh




"""
from urllib.robotparser import RobotFileParser

# 读取爬虫文件
rp = RobotFileParser()
rp.set_url('https://www.baidu.com/robots.txt')
rp.read()
# 判定指定爬虫是否可以爬取，指定目录
# can_fetch  第一个参数是爬虫名称，第二个参数是爬取位置
print(rp.can_fetch('Baiduspider', 'https://www.baidu.com')) # True
print(rp.can_fetch('Baiduspider', 'https://www.baidu.com/homepage/')) # True
print(rp.can_fetch('Googlebot', 'https://www.baidu.com/homepage/')) # False
